/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package co.edu.univalle.proyecto.persistencia;

import co.edu.univalle.proyecto.modelo.Usuarios;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

/**
 *
 * @author CQ 43 - 450LA
 */
@Stateless
public class UsuariosDAO implements UsuariosDAOLocal {
   @PersistenceContext
    private EntityManager entityManager;
   
    @Override
    public void registrar(Usuarios usuario) {
           try{
            entityManager.persist(usuario);
        }catch(RuntimeException e){
            throw e;
                }
        
    }

    @Override
    public void eliminar(Usuarios usuario) {
        try{
            entityManager.remove(usuario);
        }catch(RuntimeException e){
            throw e;
        
        }    }

    @Override
    public void modificar(Usuarios usuario) {
         try{
            entityManager.merge(usuario);
        }catch(RuntimeException e){
            throw e;
        
        }
    }

    @Override
    public List<Usuarios> consultar() {
       try{
            String jpql = "select u from Usuarios u";
            Query query = entityManager.createQuery(jpql);
            return query.getResultList();
        }catch(RuntimeException e){
            throw e;
        
        }
    }

    @Override
    public Usuarios consultarPorMail(String mail) {
        try{
            return entityManager.find(Usuarios.class, mail);
        }catch(RuntimeException e){
            throw e;
        
        }
    }
    

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")
}
